const { errorResponse } = require('./response');

function errorHandler(err, req, res, next) {
    console.error(err.stack);

    // 处理已知错误类型
    if (err.name === 'ValidationError') {
        return errorResponse(res, err.message, 400);
    }

    if (err.name === 'UnauthorizedError') {
        return errorResponse(res, '未授权的访问', 401);
    }

    // 默认错误处理
    errorResponse(res, err.message || '服务器内部错误', err.status || 500);
}

module.exports = errorHandler;